Overview
Johdanto

Microsoft ODBC-ohjaimella Oraclea varten voit yhdistää ODBC-yhteensopivan sovelluksesi Oraclen tietokantaan. Tässä versiossa on parannettu suorituskykyä ja ohjausominaisuuksia ja ohjain mahdollistaa esimerkiksi PL/SQL-pakettien käytön, XA/DTC-integraation ja Oraclen käytön Internet Information Serverillä (IIS). Oracle-ODBC-ohjain vastaa Open Database Connectivityn (ODBC) määritystä, joka on kuvattu laiteympäristösi ODBC Programmer's Reference -oppaassa.

Tässä Ohjeessa kuvataan, kuinka voit asentaa ja määrittää Oracle ODBC-ohjaimen sekä käyttää sitä. Ohje sisältää seuraavat osat:

•	Järjestelmävaatimukset

•	Tietolähteiden lisääminen ja muokkaaminen asennusohjelmalla

•	ODBC Oracle-ohjaimen asetusten määrittäminen

•	Tietolähteeseen yhdistäminen

•	Yhteysmerkkijonon määritteet

•	ODBC:n tukitasot

•	SQL:n tukitasot

•	Tietotyyppien vastaavuus

•	Microsoft Transaction Serverin käyttäminen

•	Microsoft Internet Information Serverin käyttäminen

•	Käyttöjärjestelmän käyttöoikeustarkistuksen käyttäminen

•	Avainsarjaan perustuvien kohdistimien käytön rajoituksia

•	Taulukkoparametrien palauttaminen tallennetuista toimintosarjoista

•	Huomautuksia API-funktioista

•	Huomautuksia API-funktioiden säiesuojauksesta

•	Ydintason API-funktiot

•	Tason 1 API-funktiot

•	Tason 2 API-funktiot

•	Yhteysasetukset-taulukko

•	Lauseasetukset-taulukko

•	Kohdistinlaji ja rinnakkaiskäytön yhdistelmät -taulukko

•	Virhesanomat


System Requirements
Järjestelmävaatimukset

Jotta voit käyttää Microsoft ODBC-ohjainta Oraclea varten, tietokoneessasi täytyy olla asennettuna Microsoft Windows 95/98 tai Microsoft Windows NT ja Oraclen Client Software versio 7.3 tai sitä uudempi versio. Microsoft ODBC-ohjain Oraclea varten tukee vain SQL*Net 2.3:a tai sitä uudempaa versiota. Lisätietoja Oraclen tuotteista on Oraclen käyttöoppaissa.


Adding and Modifying Data Sources Using Setup
Tietolähteiden lisääminen ja muokkaaminen asennusohjelmalla

Tietolähde määrittää tietojen saantipolun. Tietoja voivat olla esimerkiksi verkkokirjasto, palvelin tai tietokanta. Tässä tapauksessa tietolähde on saantipolku Oraclen tietokantaan. Tietolähteeseen yhdistettäessä Ohjaintenhallinta tarkistaa Windowsin Rekisteristä määritetyn yhteyden tiedot.

ODBC Ohjaintenhallinta ja ODBC-ohjaimet käyttävät ODBC:n Tietolähteenhallinnan luomaa rekisterimerkintää. Tämä merkintä sisältää tietoja kustakin tietolähteestä ja siihen liittyvästä ohjaimesta. Rekisteriin on lisättävä yhdistämistiedot ennen tietolähteeseen yhdistämistä.

Kun haluat lisätä tai määrittää tietolähteitä, käynnistä 32-bittinen ODBC-hallinta Windowsin Ohjauspaneeli ODBC-sovelluksesta. ODBC-hallinta päivittää silloin tietolähteesi yhteyden tiedot. Kun lisäät tietolähteitä, ODBC-hallinta päivitää rekisteritiedot automaattisesti.

Tietolähteen lisääminen Windowsissa

1	Käynnistä ODBC-hallinta kaksoisnapsauttamalla ODBC-tietolähteet-kuvaketta Windowsin Ohjauspaneelissa.

2	Valitse ODBC-tietolähteen hallinta -valintaikkunassa Lisää-painike. Luo uusi tietolähde -valintaikkuna tulee näyttöön.

3	Valitse ODBC-ohjain ja sen jälkeen Valmis. Microsoft ODBC Oracle-ohjaimen asennus -valintaikkuna tulee näyttöön.

4	Kirjoita Tietolähteen nimi -ruutuun sen tietolähteen nimi, jota haluat käyttää. Voit valita minkä tahansa nimen.

5	Kirjoita tietolähteen kuvaus Kuvaus-ruutuun. Tämä valinnainen kenttä kuvaa tietolähdettä, johon ohjain yhdistää. Kuvaus on vapaamuotoinen.

6	Kirjoita tietokannan käyttäjän nimi Käyttäjän nimi -ruutuun. Käyttäjänimi on tietokannan käyttäjätunnuksesi.

7	Kirjoita Oracle Server -yhteysmerkkijono Palvelin-ruutuun. Yhteysmerkkijono määrittää Oracle Server -koneen, jota haluat käyttää.

8	Lisää tämä tietolähde valitsemalla OK.

Huomautus   Tietolähteet-valintaikkuna tulee näyttöön ja ODBC-hallinta päivittää Rekisterin tiedot. Kirjoittamaasi käyttäjänimeä ja yhteysmerkkijonoa käytetään tämän tietolähteen yhdistämisen oletusarvoina sekä valintaikkunaa käytettäessä, että ohjelmallisesti tapahtuvassa tietolähteen yhdistämisessä.

9	Jos haluat tehdä lisämäärityksiä Oraclen ODBC-asennukseen, valitse Asetukset-painike.

Muunnos

Kun haluat valita ladattavien tietojen muuntimen, valitse Valitse-painike. Oletusarvo on Ei muunnosohjelmaa.

Suorituskyky

Lisää REMARKS-osa luettelofunktioihin -asetus määrittää, palauttaako ohjain Remarks-sarakkeet SQLColumns-funktion palauttaman tulosjoukon osana. ODBC-ohjain toimii nopeammin, kun tätä asetusta ei ole valittu.

Lisää SYNONYMS-osa SQL Columns -funktioon -asetus määrittää, palauttaako ohjain saraketiedot.

Mukauttaminen

Käytä ODBC:n DayOfWeek -standardia määrittää, käytetäänkö tulosjoukossa ODBC:n määritysten mukaista viikonpäivämuotoa (sunnuntai = 1; lauantai = 7).

10	Jos haluat lisätä toisen tietolähteen, valitse Lisää-painike, tai valitse Sulje, jos haluat lopettaa.

Tietolähteen muokkaaminen Windowsissa

1	Käynnistä ODBC-hallinta. ODBC-tietolähteen hallinta -valintaikkuna tulee näyttöön.

2	Valitse ODBC-tietolähteen hallinta -valintaikkunasta Oraclen tietolähde, jota haluat muokata, ja valitse sitten Määritä-painike. Microsoft ODBC Oracle-ohjaimen asennus -valintaikkuna tulee näyttöön.

3	Muokkaa haluamiasi tietolähdeasetuksia ja valitse sitten OK.

Kun olet lopettanut valintaikkunan tietojen muokkaamisen, ODBC-hallinta päivittää Rekisterin tiedot.


Configuring the Oracle ODBC Driver
Oracle-ODBC-ohjaimen asetusten määrittäminen

Voit hallita Oracle-ohjaimen suorituskykyä, jos tiedät tietoympäristön ja määrität oikein tietolähteen yhteysasetukset ODBC-tietolähteen hallinta -valintaikkunassa tai yhteysmerkkijonon parametreilla. Valintaikkunassa on seuraavat ohjausobjektit, joiden avulla voidaan määrittää tietolähteen yhteysasetukset sekä valintaikkunan että yhteysmerkkijonon välityksellä tehtävälle yhdistämiselle.

•	Käyttäjätietolähde-välilehti   Tämä välilehti näyttää luettelon koneen paikallisten ja käyttäjäkohtaisten tietolähteiden nimistä.

•	Järjestelmätietolähde-välilehti   Tämä välilehti näyttää valintaikkunan, jonka avulla voit lisätä tai poistaa järjestelmän tietolähteen. Järjestelmän tietolähteet ovat kaikkien paikallisen koneen käyttäjien käytettävissä.

•	Tiedostotietolähde-välilehti   Tämä välilehti näyttää valintaikkunan, jossa voit lisätä tai poistaa paikallisessa koneessa sijaitsevan tiedostotietolähteen. Tiedostotietolähteiden yhteiskäyttö on mahdollista kaikkien niiden käyttäjien kesken, joille on asennettu sama ohjain.

•	ODBC-ohjaimet-välilehti   Tässä välilehdessä on luettelo asennetuista ODBC-ohjaimista.

•	Jäljitys-välilehti   Tämän välilehden valintaikkunassa voit määrittää, miten ODBC Ohjaintenhallinta jäljittää ODBC-funktioiden kutsut. Voit määrittää jäljityksen erikseen jokaiselle asennetulle ODBC-sovellukselle.

•	Yhteysvaranto-välilehti   Tämän välilehden valintaikkunassa voit valita yhteysasetukset kullekin asennetulle ohjaimelle.

•	Tietoja välilehdestä   Tässä välilehdessä näkyvässä valintaikkunassa on lueteltu asennettujen ODBC:n komponenttien tiedostot.

Tietolähteen lisättyäsi voit käyttää ODBC-tietolähteen hallinta -valintaikkunaa, kun haluat muuttaa tietolähteen määrityksiä. Valitse tietolähde ja valitse sitten jokin välilehti sekä muokkaa tai tarkastele sen tietoja.

Lausekahvojen enimmäismäärän oletusarvo (50) on palvelimen määrittämä.


Connecting to a Data Source
Tietolähteeseen yhdistäminen

ODBC-sovellus voi välittää yhteystiedot useilla eri tavoilla. Sovellus voi esimerkiksi määrittää ohjaimen pyytämään käyttäjältä yhteystietoja, tai se voi vaatia tietolähteen määrittävää yhteysmerkkijonoa. Tietolähteeseen yhdistämisen tapa määräytyy ODBC-sovelluksesi käyttämästä yhteysmenetelmästä.

Tavallinen tapa muodostaa yhteys tietolähteeseen on Tietolähde-valintaikkunan käyttäminen. Jos ODBC-sovelluksesi on määritetty käyttämään valintaikkunaa, valintaikkuna tulee näyttöön ja pyytää tarvittavia tietolähteen yhteystietoja.

Voit yhdistää tietolähteeseen myös yhteysmerkkijonon.

Tietolähteeseen yhdistäminen valintaikkunaa käyttämällä

1	Valitse Tietolähde-valintaikkunasta Oraclen tietolähde ja valitse sitten OK. Yhteys-valintaikkuna tulee näyttöön.

2	Kirjoita tarvittavat tiedot Yhteys-valintaikkunaan ja valitse sitten OK.

Kun yhteystiedot on tarkistettu, sovelluksesi voi käyttää ODBC-ohjainta tietolähteen tietojen käsittelemiseen.


Connection String Attributes
Yhteysmerkkijonon määritteet

Jotkin sovellukset saattavat vaatia valintaikkunan käytön sijasta tietolähteen yhteystiedot määrittävää yhteysmerkkijonoa. Yhteysmerkkijono koostuu useasta määritteestä, jotka määrittävät, kuinka ohjain muodostaa yhteyden tietolähteeseen. Määrite ilmaisee tiedon, jota ohjain tarvitsee, jotta se voi muodostaa yhteyden haluttuun tietolähteeseen. Jokaisella ohjaimella voi olla eri määritejoukko, mutta yhteysmerkkijonon muoto on aina sama. Yhteysmerkkijonon muoto on seuraava:

"DSN=tietolähteen_nimi[;SERVER=arvo] [;PWD=arvo] [;UID=arvo] [;<Määrite>=<arvo>]"

Huomautus   Microsoft ODBC-ohjain Oraclea varten tukee hieman erilaista versio 1:n yhteysmerkkijonon muotoa.

Tietolähteen nimi täytyy määrittää, jos UID-, PWD-, SERVER- (tai CONNECTSTRING-) ja DRIVER-määritteitä ei käytetä. Kaikki muut määritteet ovat kuitenkin valinnaisia. Jos mitään määritettä ei välitetä, käytetään ODBC-tietolähteen hallinta -valintaikkunan avulla Tietolähteen nimi -välilehdessä määritettyjä oletusarvoja. Ohjain saattaa erotella määritteen kirjoitusasun, joten pienet ja isot kirjaimet voidaan tulkita eri merkeiksi.

Yhteysmerkkijonon määritteet on kuvattu seuraavassa taulukossa:

Määrite:	Kuvaus:	Oletusarvo:
DSN	Tietolähteen nimi. Tämä nimi vastaa ODBC-tietolähteen hallinta  -valintaikkunan ODBC-ohjaimet-välilehdessä mainittua nimeä.	""
PWD	Käyttämäsi Oracle Server -palvelimen salasana.	""
SERVER	Käyttämäsi Oracle Server -palvelimen yhteysmerkkijono.	""
UID	Oracle Server -palvelimen käyttäjänimi. Tämä määrite saattaa olla pakollinen joissakin käyttöjärjestelmissä. Tietyt tietokannat ja taulukot saattavat vaatia tätä määritettä turvallisuussyistä. Määritä arvoksi "/", kun haluat käyttää Oraclen käyttöjärjestelmän mukaista käyttöoikeuden tunnistamista.	""
BUFFERSIZE	Puskurin optimaalinen koko sarakkeita noudettaessa. Ohjain optimoi noutamisen niin, että yksi nouto Oracle Server -palvelimesta palauttaa tarpeeksi rivejä täyttämään tämänkokoisen puskurin. Suuremmat arvot lisäävät suorituskykyä, kun tietoja noudetaan paljon.	65535
SYNONYMCOLUMNS	Kun tämä arvo on tosi (1), SQLColumn( )-funktion kutsu palauttaa saraketiedot. Muuten SQLColumn( )-funktio palauttaa vain taulukoiden ja näkymien sarakkeet. ODBC-ohjaimen käyttö on nopeampaa, kun tätä arvoa ei ole määritetty.	1
REMARKS	Kun tämä arvo on tosi (1), ohjain palauttaa SQLColumns-funktion palauttaman tulosjoukon osana Remarks-sarakkeet. ODBC-ohjaimen käyttö on nopeampaa, kun tätä arvoa ei ole määritetty.	0
StdDayOfWeek	Tämä määrite ottaa käyttöön ODBC-määrityksen mukaisen DAYOFWEEK-muodon (oletusarvo). Jos sovellus vaatii, että viikon ensimmäisenä päivänä käytetään muuta päivää kuin sunnuntaita, asetuksen arvoksi määritetään 0, jolloin käytetään suoraan Oraclen palauttamaa arvoa.	1
Seuraava esimerkiksi yhdistää Oraclen käyttäjänimellä cindy kirjautuvan käyttäjän mickey.world -palvelimella sijaitsevaan Työntekijät-tietolähteeseen:

"DSN=Työntekijät;UID=cindy;PWD=salasana;SERVER=mickey.world"

Seuraava esimerkki yhdistää moola-palvelimella sijaitsevaan Palkanmaksu-tietolähteeseen käyttäen käyttöjärjestelmän mukaista käyttöoikeuden tarkistusta:

"DSN=Palkanmaksu;UID=/;PWD=;SERVER=moola"


ODBC Conformance Levels
ODBC:n tukitasot

ODBC määrittää kahdentyyppisiä tukistandardeja ohjaimille: API-tukistandardin ja SQL-kieliopin tukistandardin. API-tukistandardi määrittää funktiot, joita ohjaimen on tuettava. SQL-tukistandardi määrittää SQL-kieliopin, jota ohjaimen on tuettava. Molemmat tukistandardit käsittävät eri tasoja.

API-tukitaso

ODBC-ohjain tukee ydintason funktioita ja tason 1 API-funktioita. Ohjain tukee myös seuraavia tason 2 funktioita:

•	SQLBrowseConnect( )

•	SQLDataSources( )

•	SQLDescribeParam( )

•	SQLExtendedFetch( )

•	SQLForeignKeys( )

•	SQLMoreResults( )

•	SQLNativeSql( )

•	SQLNumParams( )

•	SQLPrimaryKeys( )

•	SQLProcedureColumns( )

•	SQLProcedures( )

•	SQLSetPos( )

•	SQLSetScrollOptions( )

Tuetut asetukset

Ohjain tukee seuraavia tason 1 funktioiden SQLGetConnectOption( ) ja SQLSetConnectOption( ) asetuksia:

•	SQL_ACCESS_MODE (vain SQLGetConnectOption( ) )

•	SQL_AUTOCOMMIT

•	SQL_ODBC_CURSORS

•	SQL_OPT_TRACEFILE

•	SQL_OPT_TRACE

•	SQL_TRANSLATE_DLL

•	SQL_TRANSLATE_OPTION

•	SQL_TXN_ISOLATION

Ohjain tukee seuraavia tason 1 funktioiden SQLGetStmtOption( ) ja SQLSetStmtOption( ) asetuksia:

•	SQL_BIND_TYPE

•	SQL_CONCURRENCY

•	SQL_CURSOR_TYPE

•	SQL_KEYSET_SIZE

•	SQL_MAX_ROW

•	SQL_ROWSET_SIZE


SQL Conformance Levels
SQL:n tukitasot

ODBC-ohjain tukee SQL-vähimmäiskielioppia ja SQL-ydinkielioppia. Se tukee myös seuraavia ODBC:n SQL-laajennuksia:

•	päivämäärä-, kellonaika- ja päiväystiedot

•	vasen ja oikea ulkoliitos

•	numeeriset funktiot:

abs	log	round	tan
ceiling	log10	second	truncate
cos	mod	sign
exp	pi	sin
floor	power	sqrt
•	päivämääräfunktiot:

curdate	dayofweek	monthname	second
curtime	dayofyear	minute	week
dayname	hour	now	year
dayofmonth	month	quarter
•	merkkijonofunktiot:

ascii	left	right	ucase
char	length	rtrim
concat	ltrim	soundex
lcase	replace	substring
•	tyyppimuunnosfunktio:

convert

•	järjestelmäfunktiot:

ifnull

user


Mapping Data Types
Tietotyyppien vastaavuus

ODBC-ohjain yhdistää Oraclen tietotyypit vastaaviin ODBC SQL -tietotyyppeihin. Seuraavassa taulukossa on lueteltu Oracle Server version 7.3 tietotyypit ja niitä vastaavat ODBC SQL-tietotyypit.

Oracle Server -tietotyyppi:	ODBC SQL -tietotyyppi:
CHAR	SQL_CHAR
DATE	SQL_TIMESTAMP
FLOAT	SQL_DOUBLE
INTEGER	SQL_DECIMAL
LONG	SQL_LONGVARCHAR
LONG RAW	SQL_LONGVARBINARY
NUMBER	SQL_DECIMAL
RAW	SQL_VARBINARY
VARCHAR2	SQL_VARCHAR
Huomautus   ODBC SQL -tietotyypit eivät tue Oraclen MLSLABEL -tietotyyppiä. Skalaariarvot palautetaan paikallisen koodisivun muodossa.

Oracle 8:ssa VARCHAR-sarakkeen enimmäiskokoa on lisätty 2 000 tavusta 4 000 tavuun. Oracle 7.3.x -asiakasohjelmisto ei voi sitoa 2 000:ta tavua pitempiä parametriarvoja. Jos luot taulukon, jossa on yli 2 000 tavun pituinen VARCHAR-sarake, et voi suorittaa parametroituja lisäyksiä, päivityksiä, poistoja ja kyselyitä, joissa välitettävän saraketiedon pituus ylittää asiakasohjelmiston 2 000 tavun enimmäisrajan. Koska sekä Oracle ODBC-ohjain että Oracle OLE DB Provider käyttävät parametroituja lisäyksiä, päivityksiä, poistoja ja kyselyitä, ne palauttavat tässä tapauksessa ORA-01026-virheen. Oraclen asiakasohjelmiston enimmäisrajan mukaan välitetyt tiedot eivät aiheuta virhettä. Jos haluat välttää 2 000 tavun rajoituksen, sinun täytyy päivittää asiakasohjelmistosi versioon 8.0.4.1.1c tai sitä uudempaan versioon.


Using Microsoft Transaction Server
Microsoft Transaction Serverin käyttäminen

Voit käyttää Oraclen tietokannan kanssa Microsoft Windows NT- ja Microsoft Windows 95/98 -järjestelmään asennettuja Microsoft Transaction Serverin (MTS) tapahtumasarjoja tukevia komponentteja. Jos haluat, että Oraclen tietokanta toimii MTS-komponenttien kanssa, järjestelmänvalvojan täytyy luoda näkymä nimeltä V$XATRANS$. MTS-tuen käyttämiseksi on käynnistettävä Oraclen toimittama komentojono. Lisätietoja on Microsoft Transaction Serverin Ohjeessa tai Oraclen käyttöoppaissa.


Using Microsoft Internet Information Server
Microsoft Internet Information Serverin käyttäminen

Jos yhteyden luominen Internet Information Serverin (IIS) komentojonon avulla ei onnistu (varsinkin, jos palautettu virhesanoma on ORA-12641), lisää seuraava rivi Sqlnet.ora-tiedostoon:

SQLNET.AUTHENTICATION_SERVICES = (none)

Tämä poistaa käytöstä Secure Network Services -palvelun niin, että anonyymi kirjautuminen on mahdollista.


Using Operating System Authentication
Käyttöjärjestelmän käyttöoikeustarkistuksen käyttäminen

Oracle-käyttöjärjestelmän käyttöoikeuden tarkistus käyttää pohjana olevan käyttöjärjestelmän tietokannan käyttäjätilien käytön valvontaa. Käyttäjien ei tarvitse kirjoittaa salasanaa tätä sisäänkirjautumistapaa käytettäessä.

Tätä ominaisuutta voi hyödyntää määrittämällä käyttäjätunnukseksi "/" ja jättämällä salasanan määrittämättä seuraavia yhteysfunktioita käytettäessä: SQLBrowseConnect, SQLConnect tai SQLDriverConnect.


Limitations of Using Keyset-Driven Cursors
Avainsarjaan perustuvien kohdistimien käytön rajoituksia

Kyselyn määrittämästä taulukosta on voitava palauttaa vain yksilöllisiä arvoja sisältävä ROWID-sarake. Avainsarjaan perustuvaa kohdistinta ei voi käyttää liitoksiin, kyselyihin tai lauseisiin, jotka sisältävät DISTINCT-, GROUP BY-, UNION-, INTERSECT- tai MINUS-lauseenosia.


Returning Array Parameters from Stored Procedures
Taulukkoparametrien palauttaminen tallennetuista toimintosarjoista

Oracle versiossa 7.3 PL/SQL-tietuetyyppiä voi käyttää vain PL/SQL-ohjelmalla. Jos paketoidulla toimintosarjalla tai funktiolla on muodollinen argumentti, joka on määritetty PL/SQL-tietuetyypin mukaiseksi, tätä muodollista argumenttia on mahdotonta sitoa parametrina. Jos haluat palauttaa taulukkoparametreja toimintosarjoista Microsoft ODBC-ohjainta Oraclea varten käyttäessäsi, käytä toimintosarjan tai funktion argumenttien määrittelyssä PL/SQL TABLE -tyyppiä ja oikeita escape-sarjoja.

Käytä seuraavaa syntaksia, kun kutsut toimintosarjaa:

{call  <package-name>.<proc-or-func>;
(..., {resultset <max-records-requested> ,<formal-array-param_1>,;
 <formal-array-param_2>,...,<formal-array-param_n> }, ... ) }

Huomautus

•	<max-records-requested>-parametrin täytyy olla suurempi tai yhtä suuri kuin tulosjoukon rivien määrä. Muuten Oracle palauttaa ohjaimen välittämän virheen.

•	Et voi käyttää PL/SQL-tietueita taulukkoparametreina. Jokainen taulukkoparametri voi vastata vain yhtä tietokantataulukon saraketta.

Seuraava esimerkki määrittää paketin, joka sisältää kaksi toimintosarjaa, jotka palauttavat eri tulosjoukot, ja esittää kaksi tapaa palauttaa tulosjoukkoja paketista.

Paketin määritelmä:

CREATE OR REPLACE PACKAGE SimplePackage AS

TYPE t_id is TABLE of  NUMBER(5)

    INDEX BY BINARY_INTEGER;

TYPE t_Course is TABLE of VARCHAR2(10)

    INDEX BY BINARY_INTEGER;

TYPE t_Dept is TABLE of VARCHAR2(5)

    INDEX BY BINARY_INTEGER;

PROCEDURE proc1

(

o_id 	OUT 	t_id,

ao_course 	OUT 	t_Course,

ao_dept	OUT 	t_Dept

);

TYPE t_pk1Type1 IS TABLE OF VARCHAR2(100) INDEX BY BINARY_INTEGER;

TYPE t_pk1Type2 IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;

PROCEDURE proc2

(

i_Arg1	IN 	NUMBER,

ao_Arg2	OUT	t_pk1Type1,

ao_Arg3	OUT	t_pk1Type2

);

END SimplePackage;

CREATE OR REPLACE PACKAGE BODY SimplePackage AS

    PROCEDURE  proc1 ( o_id OUT t_id,

    ao_course OUT t_Course, ao_dept OUT t_Dept   ) AS

    BEGIN

          o_id(1):= 200;

          ao_course(1) :=  'M101';

          ao_dept(1) :=  'EEE' ;

          o_id(2) := 201;

          ao_course(2) :=  'PHY320';

          ao_dept(2) :=  'ECE' ;

     END proc1;

PROCEDURE proc2

(

i_Arg1	IN 	NUMBER,

ao_Arg2	OUT	t_pk1Type1,

ao_Arg3	OUT	t_pk1Type2

)

AS

i	NUMBER;

BEGIN

FOR i IN 1 .. i_Arg1 LOOP

ao_Arg2(i) := 'Row Number ' || to_char(i);

END LOOP;

FOR i IN 1 .. i_Arg1 LOOP

ao_Arg3(i) := i;

END LOOP;

END proc2;

END SimplePackage;

PROC1-toimintosarjan kutsuminen

1	Palauta kaikki sarakkeet yhdessä tulosjoukossa:

{ call SimplePackage.Proc1( {resultset  3, o_id , ao_course, ao_dept  } ) }

2	Palauta jokainen sarake erillisenä tulosjoukkona:

{call SimplePackage.Proc1( {resultset 3, o_id},  {resultset 3, ao_course}, {resultset 3, ao_dept} ) }

Tämä lause palauttaa kolme tulosjoukkoa, yhden joka sarakkeesta.

PROC2-toimintosarjan kutsuminen

1	Palauta kaikki sarakkeet yhdessä tulosjoukossa:

{call SimplePackage.Proc2( 5 , {resultset  5, ao_Arg2, ao_Arg3} ) }

2	Palauta jokainen sarake erillisenä tulosjoukkona:

{call SimplePackage.Proc2( 5 , {resultset 5, ao_Arg2}, {resultset 5, ao_Arg3} ) }

Varmista, että sovelluksesi noutavat kaikki tulosjoukot SQLMoreResults API-funktiolla. Lisätietoja on ODBC Programmer's Reference -oppaassa.

Huomautus    Oracle ODBC-ohjaimen versiossa 2.0 ei voi käyttää Oraclen funktioita, jotka palauttavat PL/SQL-taulukoita tulosjoukkojen palauttamisessa.


Notes on API Functions
Huomautuksia API-funktioista

Microsoft ODBC-ohjain Oraclea varten tukee ydintason, tason 1 ja tason 2 API-funktioita. Nämä funktiot on lueteltu Ohjeen aiheessa ODBC:n tukitasot.

•	Ydintason käyttöliittymän (CLI, Core Level Interface) tuki sisältää ominaisuudet, jotka on mainittu ISO CLI -määrityksissä, sekä X/Open CLI -määrityksessä mainitut pakolliset ominaisuudet.

•	Tason 1 tuki sisältää ydintason käyttöliittymän toiminnallisuuden sekä lisäominaisuuksia, kuten tapahtumasarjojen tuen.

•	Tason 2 tuki sisältää tason 1 toiminnallisuuden sekä lisäominaisuuksia, kuten kirjanmerkit, dynaamiset parametrit ja asynkronisen ODBC-funktioiden suorittamisen.


Thread-Safety Notes on API Functions
Huomautuksia API-funktioiden säiesuojauksesta

Microsoft ODBC-ohjain Oraclea varten on säiesuojattu. Oracle ei kuitenkaan tue useita samanaikaisesti suoritettavia lauseita yksittäisessä yhteydessä. Ohjain noudattaa tätä rajoitusta. Vaikka monisäikeisissä sovelluksissa mikä tahansa säie voi kutsua Oracle-ODBC-ohjainta milloin tahansa, ohjain keskeyttää kaikki muut yksittäisen yhteyden käynnistämät säikeet, kunnes alkuperäinen säie lopetetaan.

Ohjain ei keskeytä säikeiden suorittamista, jos samanaikaisesti suoritettavat lauseet on käynnistetty eri yhteyksistä.


Core Level Functions
Ydintason API-funktiot

Ydintason funktiot muodostavat ODBC-ohjaimien tukivaatimusten vähimmäistason.

API-funktio:	Huomautuksia:
SQLAllocConnect	Tämä funktio varaa muistia yhteyskahvalle (hdbc) henv-kahvan määrittämässä ympäristössä. Ohjaintenhallinta käsittelee tämän kutsun ja kutsuu ohjaimen SQLAllocConnect-funktiota aina, kun SQLConnect-, SQLBrowseConnect- tai SQLDriverConnect-funktiota kutsutaan.
SQLAllocEnv	Tämä funktio näyttää valintaikkunan Oraclen asiakasohjelmiston asennuksen tarkistamiseksi ja palauttaa sitten arvon SQL_NULL_HANDLE. Jos Oraclen asiakasohjelmistoa ei ole asennettu, tämä funktio varaa muistia ympäristökahvalle (henv) ja alustaa ODBC:n kutsutason käyttöliittymän sovelluksen käyttöön.
SQLAllocStmt	Tämä funktio varaa muistia lausekahvalle ja liittää lausekahvan hdbc-kahvan määrittämään yhteyteen. Ohjaintenhallinta välittää tämän kutsun ohjaimeen, joka varaa muistia hstmt -rakennetta varten.
SQLBindCol	Tämä funktio varaa tallennustilaa tulossarakkeelle ja määrittää tuloksen tyypin.
SQLCancel	Tämä funktio peruuttaa lausekahvaan hstmt perustuvan käsittelyn. Joissain tapauksissa Oracle ei salli suoritettavan lauseen peruuttamista. Lauseen suoritus jatkuu, kunnes Oracle päättää toiminnon, joilloin ODBC-ohjain peruuttaa lauseen tulokset.
SQLColAttributes	Tämä funktio palauttaa kuvaajatiedot tulosjoukon sarakkeelle. Kuvaajatiedot palautetaan merkkijonona, 32-bittisenä kuvaajakohtaisena arvona tai kokonaislukuarvona.
SQLConnect	Tämä funktio yhdistää tietolähteeseen. Jos haluat käyttää Oraclen käyttöjärjestelmän mukaista käyttöoikeuden tunnistusta, määritä szUID-parametrin arvoksi "/" ja szAuthStr-parametrin arvoksi "".
SQLDescribeCol	Tämä funktio palauttaa määritetyn tulossarakkeen nimen, tyypin, tarkkuuden, desimaalien määrän ja nollattavuuden. Huomautus    SQLDescribeCol ilmaisee lasketut sarakkeet SQL_VARCHAR-tietotyypin mukaisina.
SQLDisconnect	Tämä funktio sulkee yhteyden. Jos yhteysvaranto on käytössä yhteiskäyttöympäristössä ja sovellus kutsuu SQLDisconnect -funktiota, yhteys palautetaan yhteysvarantoon ja se on edelleen muiden samaa yhteiskäyttöympäristöä käyttävien komponenttien käytettävissä.
SQLError	Tämä funktio palauttaa virheen tai viimeisimmän virheen tilatiedot. Ohjain ylläpitää pinoa tai luetteloa virheistä, jotka voidaan palauttaa hstmt-, hdbc- ja henv-argumentteja varten sen mukaan, kuinka SQLError-funktiota on kutsuttu. Virhejono tyhjennetään jokaisen lauseen suorittamisen jälkeen. Funktio palauttaa yleensä Oraclen virhesanoman tai muussa tapauksessa NULL-arvon.
SQLExecDirect	Tämä funktio suorittaa uuden valmisteltavan SQL-lauseen. Ohjain käyttää parametrimerkitsinmuuttujien nykyisiä arvoja, jos lauseessa on parametreja. Jos taulukon, näkymän tai kentän nimessä on välilyöntejä, kirjoita nimen ympärille lainausmerkit. Jos tietokannassasi on esimerkiksi taulukko nimeltä Oma taulukko ja kenttä nimeltä Oma kenttä, kirjoita tunnukset seuraavasti: SELECT "Oma taulukko". "Oma kenttä1",; "Oma taulukko"."Oma kenttä2" FROM "Oma taulukko"
SQLExecute	Tämä funktio suorittaa valmistellun SQL-lauseen (SQLPrepare-funktion valmisteleman lauseen). Ohjain käyttää parametrimerkitsin-muuttujien nykyisiä arvoja, jos lauseessa on parametreja.
SQLFetch	Tämä funktio noutaa yhden rivin tulosjoukosta edellisten SQLBindCol-kutsujen määrittämiin kohteisiin. Funktio valmistaa ohjaimen ei-sidottujen sarakkeiden SQLGetData-kutsua varten.
SQLFreeConnect	Tämä funktio vapauttaa yhteyskahvan ja kaiken kahvalle varatun muistin.
SQLFreeEnv	Tämä funktio sulkee ODBC-ohjaimen ja vapauttaa kaiken ohjaimen varaaman muistin.
SQLFreeStmt	Tämä funktio lopettaa määritettyyn hstmt-kahvaan liittyvän suorituksen, sulkee kaikki siihen liittyvät avoimet kohdistimet, hylkää odottavat tulokset ja valinnaisesti vapauttaa kaikki lausekahvaan liittyvät resurssit.
SQLGetCursorName	Tämä funktio palauttaa määritettyyn hstmt-kahvaan liittyvän kohdistimen nimen.
SQLNumResultCols	Tämä funktio palauttaa tulosjoukon kohdistimen sarakkeiden määrän.
SQLPrepare	Tämä funktio valmistelee SQL-lauseen suunnittelemalla lauseen optimoinnin ja suorituksen. SQLExecDirect kääntää SQL-lauseen suoritusta varten. Jos taulukon, näkymän tai kentän nimessä on välilyöntejä, kirjoita nimen ympärille lainausmerkit. Jos tietokannassasi on esimerkiksi taulukko nimeltä Oma taulukko ja kenttä nimeltä Oma kenttä, kirjoita tunnukset seuraavasti: SELECT "Oma taulukko"."Oma kenttä" FROM "Oma taulukko" Tietoja tulosjoukkojen käyttämisestä muodollisina taulukkoparametreina on Ohjeen aiheessa Taulukkoparametrien palauttaminen tallennetuista toimintosarjoista.
SQLRowCount	Koska Oracle ei tue tulosjoukon rivimäärän palauttamista ennen kuin viimeinen rivi on haettu, funktio palauttaa aina arvon –1.
SQLSetCursorName	Tämä funktio liittää kohdistimen nimen aktiiviseen lausekahvaan (hstmt).
SQLSetParam	Tämä ODBC:n version 1.0 funktio on korvattu ODBC:n versiosta 2.0 alkaen SQLBindParameter-funktiolla.
SQLTransact	Tämä funktio pyytää vahvistusta tai peruutusta kaikilta aktiivisilta toiminnoilta, jotka perustuvat yhteyden laitekahvoihin (hstmt), tai kaikilta yhteyksiltä, jotka perustuvat henv-ympäristökahvaan. Jos vahvistus epäonnistuu manuaalisessa tilassa, tapahtumasarjan suoritus jää aktiiviseksi. Voit joko yrittää peruuttaa tapahtumasarjan tai yrittää vahvistaa sen uudelleen. Jos vahvistustoiminto epäonnistuu automaattisessa tapahtumasarjan suoritustilassa, tapahtumasarja peruutetaan automaattisesti. Tapahtumasarja ei voi olla passiivinen.


Level 1 Functions
Tason 1 API-funktiot

Taso 1 sisältää ydintason funktioiden tuen sekä lisätoimintoja, kuten tapahtumasarjojen tuen.

API-funktio:	Huomautuksia:
SQLColumns	Tämä funktio luo tulosjoukon taulukolle. Tulosjoukko on määritettyjen taulukoiden sarakeluettelo. Kun pyydät sarakkeita PUBLIC-synonyymille, SYNONYMCOLUMNS-yhteysmääritteen täytyy olla määritetty ja szTableOwner-parametrin arvoksi pitää olla määritetty tyhjä merkkijono. Kun ohjain palauttaa sarakkeita PUBLIC-synonyymille, se asettaa TABLE NAME -sarakkeen arvoksi tyhjän merkkijonon. Tulosjoukko sisältää ORDINAL POSITION -lisäsarakkeen jokaisen rivin viimeisenä sarakkeena. Tämän sarakkeen arvo vastaa sarakkeen järjestyslukua taulukossa.
SQLDriverConnect	Tämä funktio yhdistää tietolähteeseen. Lisätietoja on Ohjeen aiheessa Yhteysmerkkijonon määritteet.
SQLGetConnectOption	Tämä funktio palauttaa yhteysasetuksen nykyisen arvon. Funktio on osittain tuettu. Ohjain tukee kaikkia fOption-argumentin arvoja, mutta se ei tue joitain fOption-argumentin SQL_TXN_ISOLATION vParam-arvoja. Lisätietoja on Ohjeen aiheessa Yhteysasetukset-taulukko.
SQLGetData	Tämä funktio palauttaa määritetyn tulosjoukon nykyisen tietueen yksittäisen kentän arvon.
SQLGetFunctions	Tämä funktio palauttaa arvon TRUE jokaiselle tuetulle funktiolle. Funktion toteuttaa Ohjaintenhallinta.
SQLGetInfo	Tämä funktio palauttaa tietoja ODBC-ohjaimesta SQLHDBC-, SQLUSMALLINT-, SQLPOINTER-, SQLSMALLINT- ja SQLSMALLINT * -tyyppien mukaisten argumenttien ja yhteyskahvaan (hdbc) liittyvän tietolähteen perusteella.
SQLGetStmtOption	Tämä funktio palauttaa lauseasetuksen nykyisen asetuksen. Lisätietoja on Ohjeen aiheessa Lauseasetukset-taulukko.
SQLGetTypeInfo	Tämä funktio palauttaa tietoja tietolähteen tukemista tietotyypeistä. Ohjain palauttaa tiedot SQL-tulosjoukkona.
SQLParamData	Tätä funktiota käytetään yhdessä SQLPutData-funktion kanssa määrittämään parametrien tietoja lauseen suoritusaikana.
SQLPutData	Tämä funktio sallii sovelluksen lähettää tietoja ohjaimelle parametria tai saraketta varten lauseen suorittamisen aikana.
SQLSetConnectOption	Tämä funktio mahdollistaa yhteyden ominaisuuksien määrittämisen. Funktio on osittain tuettu. Ohjain tukee kaikkia  fOption-argumentin arvoja, mutta se ei tue joitain fOption-määritteen SQL_TXN_ISOLATION vParam-arvoja. Lisätietoja on Ohjeen aiheessa Yhteysasetukset-taulukko.
SQLSetStmtOption	Tämä funktio määrittää lausekahvaan (hstmt) liittyvät asetukset. Lisätietoja on Ohjeen aiheessa Lauseasetukset-taulukko.
SQLSpecialColumns	Tämä funktio palauttaa optimaalisen sarakejoukon, joka yksilöi taulukon rivin.
SQLStatistics	Tämä funktio palauttaa yksittäiseen taulukkoon tai taulukon indekseihin ja tunnistenimiin liittyvät tilastotiedot. Ohjain palauttaa tiedot tulosjoukkona.
SQLTables	Tämä funktio palauttaa taulukkonimien luettelon SQLTables-lauseen parametrimäärityksen mukaan. Jos mitään parametria ei määritetä, ohjain palauttaa nykyiseen tietolähteeseen tallennetut taulukon nimet. Ohjain palauttaa tiedot tulosjoukkona.  Luettelointityyppiset kutsut eivät johda tulosjoukkomerkintään etänäkymien tai paikallisten parametroitujen näkymien osalta. SQLTables-funktion kutsu yksilöllistä taulukkonimeä käyttäen palauttaa kuitenkin vastaavan näkymänimen, jos sellainen on olemassa. Näin API voi tarkistaa nimiristiriidat ennen uuden taulukon luomista. PUBLIC-synonyymit palautetaan TABLE_OWNER-arvolla "". SYSin tai SYSTEMin omistama VIEWS tunnistetaan kuten SYSTEM VIEW.


Level 2 Functions
Tason 2 API-funktiot

Taso 2 sisältää tason 1 funktioiden tuen sekä lisätoimintoja, kuten kirjanmerkkien, dynaamisten parametrien ja ODBC-funktioiden asynkronisen suorituksen tuen.

API-funktio:	Huomautuksia:
SQLBindParameter	Tämä funktio liittää puskurin parametrimerkkiin SQL-lauseessa.
SQLBrowseConnect	Tämä lause palauttaa määritteiden tai määritteiden arvojen peräkkäisiä tasoja.
SQLDataSources	Tämä funktio luettelee tietolähteiden nimet. Funktion toteuttaa Ohjaintenhallinta.
SQLDescribeParam	Tämä funktio palauttaa valmisteltuun SQL-lauseeseen liittyvän parametrimerkin kuvauksen. Funktio palauttaa lauseen jäsentelyyn perustuvan arvauksen parametrin tyypistä. Jos parametrin tyyppiä ei voida määrittää, arvoksi palautetaan SQL_VARCHAR, jonka enimmäispituus on 2 000 merkkiä.
SQLDrivers	Funktion toteuttaa Ohjaintenhallinta.
SQLExtendedFetch	Tämä funktio on samanlainen kuin SQLFetch, mutta se palauttaa useita rivejä ja käyttää taulukkoa jokaiselle sarakkeelle. Tulosjoukko on eteenpäin vieritettävä, ja siitä voidaan tehdä taaksepäin vieritettävä, jos kohdistin määritetään staattiseksi eikä yksisuuntaiseksi. Yksisuuntaisille, vain eteenpäin vieritettäville kohdistimille, joiden sarakesidonta on oletusarvon mukainen, sarakkeen tiedot BUFFERSIZE-yhteysmääritettä suuremmista tietojoukoista haetaan suoraan tietopuskureihin. Funktio ei tue vaihtuvamittaisia kirjanmerkkejä eikä rivijoukon hakemista kirjanmerkin siirtymäsarakkeesta (sarakkeesta, jonka järjestysnumero on muu kuin 0).
SQLForeignKeys	Tämä funktio palauttaa luettelon määritetyn taulukon viiteavaimista tai yhteen taulukkoon viittaavien muiden taulukoiden viiteavaimista.
SQLMoreResults	Tämä funktio määrittää, onko lausekahvaan hstmt perustuvia muita SELECT-, UPDATE-, INSERT- tai DELETE-lauseita sisältäviä suorituksia kesken. Jos niitä on, funktio alustaa kyseisten tulosten suorittamisen.  Oracle tukee useita tulosjoukkoja vain tallennetuista toimintosarjoista, kun käytetään {tulosjoukko… }-escape-jaksoja.
SQLNativeSql	Lisätietoja funktion käytöstä on Ohjeen aiheessa Taulukkoparametrien palauttaminen tallennetuista toimintosarjoista.
SQLNumParams	Tämä funktio palauttaa SQL-lauseen parametrien määrän. Parametrien määrän pitäisi olla yhtä suuri kuin kysymysmerkkien määrä SQLPrepare-funktiolle välitetyssä SQL-lauseessa.
SQLPrimaryKeys	Tämä funktio palauttaa taulukon perusavainsarakkeiden nimet.
SQLProcedureColumns	Tämä funktio palauttaa luettelon syöte- ja tulosparametreista, palautettavasta arvosta, yksittäisen toimintosarjan tulosjoukon sarakkeista sekä kaksi lisäsaraketta, OVERLOAD ja ORDINAL_POSITION. OVERLOAD-sarake on Oraclen Data Dictionary -näkymän ALL_ARGUMENTS-taulukon OVERLOAD-sarake. ORDINAL_POSITION on Oraclen Data Dictionary -näkymän ALL_ARGUMENTS-taulukon SEQUENCE-sarake. Paketoitujen toimintosarjojen osalta PROCEDURE NAME -sarakkeen muoto on paketin_nimi.toimintosarjan_nimi. Funktio ei palauta toimintosarjaan tai funktioon viittaavan luodun synonyymin toimintosarjan sarakkeita.
SQLProcedures	Tämä funktio palauttaa luettelon tietolähteen toimintosarjoista. Paketoitujen toimintosarjojen osalta PROCEDURE NAME -sarakkeen muoto on paketin_nimi.toimintosarjan_nimi. Koska Oraclessa ei ole tapaa erottaa paketoituja toimintosarjoja paketoiduista funktioista, ohjain palauttaa PROCEDURE_TYPE-sarakkeelle arvon SQL_PT_UNKNOWN.
SQLSetPos	Tämä funktio määrittää kohdistimen sijainnin rivijoukossa. Voit käyttää SQLSetPos-funktiota SQLGetData-funktion kanssa, kun haluat hakea rivejä ei-sidotuista sarakkeista sen jälkeen, kun kohdistin on sijoitettu määritetylle rivijoukon riville. Argumentin fOption arvolla SQL_ADD tulosjoukkoon lisättävät rivit lisätään tulosjoukon viimeisen rivin perään.
SQLSetScrollOptions	Tämä funktio määrittää asetukset, jotka ohjaavat lausekahvaan hstmt liittyviä kohdistimia. Lisätietoja on Ohjeen aiheessa Kohdistintyyppien ja rinnakkaiskäytön yhdistelmät -taulukko.


Connect Options Table
Yhteysasetukset-taulukko

Sovelluksessa voidaan käyttää seuraavia asetuksia tietokantayhteyden mukauttamiseen.

Yhteysasetus:	Huomautuksia:
SQL_AUTOCOMMIT	Jos määrität  asetuksen arvoksi SQL_AUTOCOMMIT_OFF, sovelluksesi täytyy vahvistaa tai peruuttaa tapahtumasarjojen suoritus eksplisiittisesti SQLTransact-funktiolla.
SQL_ODBC_CURSORS	Tämä yhteysasetus määritetään Ohjaintenhallinnassa.
SQL_OPT_TRACE	Tämä yhteysasetus määritetään Ohjaintenhallinnassa.
SQL_OPT_TRACEFILE	Tämä yhteysasetus määritetään Ohjaintenhallinnassa.
SQL_TRANSLATE_DLL	Tämä asetus palauttaa virheen "Ohjain ei voi suorittaa tätä toimintoa".
SQL_TRANSLATE_OPTION	Muunnos-DLL-tiedostolle välitettävä 32-bittinen arvo.
SQL_TXN_ISOLATION	Ohjain sallii vain SQL_TXN_READ_COMMITTED-arvon. Seuraavia vParam-arvoja ei tueta: SQL_TXN_READ_UNCOMMITTED SQL_TXN_REAPEATABLE_READ SQL_TXN_SERIALIZABLE
SQL_ATTR_ENLIST_IN_DTC	Tämä ODBC 3.0 -yhteysasetus sallii Oracle-ODBC-ohjaimen käyttämisen Microsoft Transaction Serverin koordinoimissa jaetuissa tapahtumasarjoissa. Se välittää pITransaction-käyttöliittymäosoittimen tapahtumasarjalle vParam-argumenttina.
SQL_ATTR_CONNECTION_DEAD	Tämä vain luku -muotoa oleva ODBC 3.5 -yhteysasetus sallii mahdollisuuden määrittää, onko yhteys Oracle Server -palvelimeen epäonnistunut.


Statement Options Table
Lauseasetukset-taulukko

Sovelluksessa voidaan käyttää seuraavia asetuksia tiettyjen suorituslauseiden mukauttamiseksi.

Lauseasetus:	Huomautuksia:
SQL_BIND_TYPE	Ei voi ylittää 2 147 483 647:ää tavua tai käytettävissä olevaa muistia.
SQL_CONCURRENCY	Lisätietoja sallituista arvoista on Ohjeen aiheessa Kohdistintyyppien ja rinnakkaiskäytön yhdistelmätaulukko.
SQL_CURSOR_TYPE	Ohjain ei tue SQL_CURSOR_DYNAMIC-arvoa. Lisätietoja on Ohjeen aiheessa SQLSetScrollOptions. Sallituista arvoista on lisätietoja Ohjeen aiheessa Kohdistientyyppien ja rinnakkaiskäytön yhdistelmätaulukko.
SQL_GET_BOOKMARK	Palauttaa 32-bittisen kokonaislukuarvon, joka on nykyisen tietuenumeron kirjanmerkki. Arvo voidaan vain lukea, sitä ei voi asettaa.
SQL_KEYSET_SIZE	Arvo voi olla vain 0.
SQL_MAX_ROWS	Tulosjoukosta palautettavien rivien enimmäismäärä.
SQL_ROW_NUMBER	Palauttaa 32-bittisen kokonaisluvun, joka määrittää nykyisen rivin sijainnin tulosjoukossa. Arvo voidaan vain lukea, sitä ei voida asettaa.
SQL_ROWSET_SIZE	Asetuksen enimmäisarvo on 4 294 967 296. Tietokoneessasi täytyy olla kuitenkin tarpeeksi näennäismuisita, jotta pyyntö voidaan käsitellä.
SQL_USE_BOOKMARKS	Ohjain tukee SQL_USE_BOOKMARKS-asetuksen määrittämistä arvoksi SQL_UB_ON ja näyttää kiinteämittaiset kirjanmerkit.


Cursor Type and Concurrency Combinations Table
Kohdistintyyppien ja rinnakkaiskäytön yhdistelmätaulukko

Kohdistimen käytettävyys määräytyy kohdistintyypin mukaan. Rinnakkaiskäyttöasetukset ohjaavat tulosjoukon päivitettävyyttä ja lukitsemista.

Kohdistimen tyyppi:	Rinnakkaiskäyttö (sallitut arvot):
SQL_CURSOR_FORWARD_ONLY	SQL_CONCUR_READ_ONLY
SQL_CURSOR_STATIC	SQL_CONCUR_READ_ONLY
SQL_CURSOR_KEYSET_DRIVEN*	SQL_CONCUR_READ_ONLY SQL_CONCUR_LOCK ** SQL_CONCUR_VALUES

Huomautuksia

* Lisätietoja on Ohjeen aiheessa Avainsarjaan perustuvien kohdistimien rajoituksia.

** SQL_CONCUR_LOCK-parametria tuetaan vain, kun SQL_AUTOCOMMIT-yhteysmäärityksen arvoksi on määritetty SQL_AUTOCOMMIT_OFF.


Error Messages
Virhesanomat

Kun virhe tapahtuu, Microsoft ODBC-ohjain Oraclea varten palauttaa SQLSTATE-arvon (ODBC-virhekoodin) ja virhesanoman. Ohjain hakee tämän tiedon sekä ohjaimen tunnistamista virheistä että Oracle Server -palvelimen palauttamista virheistä.

Oracle-ohjaimen palauttamat sanomat

Jos Oraclen virhesanoma on käytettävissä, se palautetaan, jolloin sitä edeltää [Microsoft]-, [ODBC-ohjain Oraclea varten]- ja [Oracle]-tunnisteet; muuten sanoma palautetaan ilman [Oracle]-tunnistetta, kuten seuraavissa esimerkeissä:

Oraclen virhesanoma:

[Microsoft][Oracle ODBC-ohjain][Oracle]ORA-nnnnn sanoman teksti

Oracle-ODBC-ohjaimen virhesanoma:

[Microsoft][Oracle ODBC-ohjain]